package cn.iocoder.yudao.framework.pay.core.client.impl.epayments;

import cn.iocoder.yudao.framework.common.util.validation.ValidationUtils;
import cn.iocoder.yudao.framework.pay.core.client.PayClientConfig;
import javax.validation.Validator;
import javax.validation.constraints.NotBlank;
import lombok.Data;

/**
 * 聚合支付的 PayClientConfig 实现类
 *
 * @author cai
 * @date 2024/02/26 15:40
 */
@Data
public class EPaymentsClientConfig implements PayClientConfig {

    /**
     * 商户 ID (由ePayments分配)
     */
    @NotBlank(message = "商户ID不能为空")
    private String merchantId;
    /**
     * 商户key (由ePayments分配)
     */
    @NotBlank(message = "商户key不能为空")
    private String merchantKey;
    /**
     * 商户在微信开放平台开同APP后分配的APPID，支付方式为微信时必须传入，支付宝可不传入该参数
     */
    private String subAppId;
    /**
     * 订单有效时间，单位是分钟
     */
    private int orderValidMin = 60;

    @Override
    public void validate(Validator validator) {
        ValidationUtils.validate(validator, this);
    }

}
